package ke07.tcp;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * Dieser Server behandelt Client-Anfragen nacheinander, d.h. es kann immer nur
 * eine Client-Anfrage zur gleichen Zeit behandelt werden. Dies wird durch den
 * Aufruf von run() statt start() bewirkt. Die parallele Verarbeitung von
 * TCPServer sollte prinzipiell vorgezogen werden.
 * 
 */
public class TCPServer2 {

	public static void main(String[] args) throws IOException {

		System.out.println("Server gestartet");
		try {
			// Server starten
			ServerSocket server = new ServerSocket(6789);

			while (true) {
				System.out.println("Warte auf Client");
				// warten auf eine neue Verbindung
				Socket s = server.accept();
				System.out.println("Client angenommen");
				new TCPServerThread(s).run();
			}

			// server.close();

		} catch (IOException e) {
			e.printStackTrace();
		}

	}
}
